Computer arrangements, including microprocessors and digital signal processors, have been designed for a wide range of applications and have been used in virtually every industry. For a variety of reasons, many of these applications have been directed to processing video data and have demanded minimal levels of power consumption and compactness. Some applications have further demanded a high-speed computing engine that can perform effectively on a real-time or near real-time basis. Many of these video-processing applications have required a data-signal processing circuit that is capable of performing multiple functions at ever-increasing speeds.
Various video applications, such as moving pictures experts groups (MPEG) applications, MPEG2 applications (e.g., all-digital transmission of video data at coded bitrates between about 4 and 9 Mbit/sec) and others employ compressed video data. Data compression is particularly useful in data processing and transfer because smaller amounts of data can typically be transferred faster and use a smaller bandwidth. However, data compression can sometimes produce errors resulting from lost data. The lost data typically shows up as a discrepancy, or artifact, in the video image. As data is compressed smaller, the occurrence of artifacts increases. In this regard, there is a tradeoff between increased compression and increased artifacts that occur as a result of the compression.
Video images created using compressed data may include several artifacts without significantly affecting image quality or at least without reducing the image quality below a particular level of acceptability. In certain video processing applications, an acceptable count, or number, of artifacts is selected and the compression of video data is controlled so that the artifact count is maintained within an acceptable range. In these applications, it is generally useful to count and/or identify the artifacts for taking corrective or other action in response to the count.
In video sequences that use MPEG2 compressed and decompressed data, several types of artifacts can be found. These sequences typically employ an encoding format such as 8×8 (MPEG2), 8×10 (540 or 528 pixels), or 8×12 (480 pixels) formats. Due to problems related to issues such as quantization of 8×8 block discreet cosine transform (DCT) coefficients or poor encoded results, artifacts can be amplified through processes such as contrast or sharpness enhancement. In these and other instances, noticeable blocking artifacts can be identified and are commonly referred to in connection with the blockiness of a particular video sequence. Blocking artifacts commonly show up momentarily as artificial rectangular discontinuities in a decompressed decoded image. The visibility of the blocking artifacts generally depends on the amount of compression used, the quality and nature of the original pictures as well as the quality of the coder used. The visible blocks may include 8×8 DCT blocks or misplaced blocks (e.g., 16×16 pixel macroblocks) due to the failure of motion prediction and/or estimation in an MPEG coder or other motion vector system, such as a standards converter. It is desirable to take corrective actions to reduce the visibility of these artifacts.
The present invention is directed to goals including the above-mentioned and the detection of artifacts in MPEG2 and other types of video data processing.